package cn.shop.admin.mapper;

import cn.shop.admin.entity.backPermissionModule.BackPermission;
import cn.shop.base.MyBaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 总后台 权限表(BackPermission)表数据库访问层
 *
 * @author jzw
 * @since 2021-11-08 13:01:51
 */
public interface BackPermissionMapper extends MyBaseMapper<BackPermission> {


	/**
	 * 查询用户的权限
	 *
	 * @param userId 用户id
	 * @author jzw
	 * @since 2021/11/8 14:02
	 */
	List<BackPermission> allPermissionByUserId(@Param("userId") Long userId);


	/**
	 * 通过用户id移除 用户和角色之间的关系
	 *
	 * @param roleId 用户id
	 * @return 影响条数
	 * @author jzw
	 * @since 2021/11/17 14:23
	 */
	int removePermissionByRoleId(Long roleId);

	/**
	 * 分配角色
	 *
	 * @param collect
	 * @return
	 * @author jzw
	 * @since 2021/11/17 14:01
	 */
	int assignPermission(List<Map<String, Object>> collect);

	/**
	 * 获取当前登录用户的权限url
	 *
	 * @param userId
	 * @return
	 * @author jy
	 * @since 2022/1/17 16:31
	 */
	List<String> getAllPermissionUrlByUserId(Long userId);

	/**
	 * 获取当前登录人的按钮权限信息
	 *
	 * @param userId 当前登录人id
	 * @return java.util.List<java.lang.String>
	 * @since 2020/8/24 21:55
	 */
	List<String> getAllBtnPermissionByUserId(Long userId);

}

